<?php
    $title = "Debugging WebKit";
    include("../header.inc");
?>

<div class="mac-instructions">
<h2>Debugging on Mac OS X</h2>
<p>To debug from within Xcode, you can use the WebKit workspace. Ensure that the Products and Intermediates locations for the workspace match those used by <code>build-webkit</code> by choosing File > Workspace Settings and clicking the Advanced button, selecting Custom, Relative to Workspace, and entering WebKitBuild both for Products and for Intermediates. Note that if you have specified a custom build location in Xcode preferences, then you don&rsquo;t need to do this.</p>
<h3>Debugging UIProcess</h3>
<p>Follow the instructions on the <a href="debug-mac-uiprocess.html">debugging UIProcess</a> page.</p>
<h3>Debugging WebProcess</h3>
<ul>
    <li>
        <p>From the command line:</p>
        <p>Execute the <code>debug-safari</code> or <code>debug-minibrowser</code> <a href="/coding/scripts.html">script</a> with the <code>--target-web-process</code> option. It will start the debugger with WebProcess as the target and with command-line arguments that will make WebProcess run Safari or MiniBrowser as its client. At the debugger prompt, enter <code>run</code> to start the process.</p>
    </li>
    <li>
        <p>From Xcode:</p>
        <p>Open the WebKit workspace and choose &ldquo;All Source (target WebProcess)&rdquo; from the Scheme pop-up menu in the toolbar, then choose Product > Run. If WebKit is already built, it is quicker to choose Product > Perform Action > Run Without Building</p>
    </li>
</ul>
</div>
<div class="windows-instructions">
<h2>Debugging on Windows</h2>
<ol>
<li><p>Open <code>Source/WebKit/WebKit.vcxproj/WebKit.sln</code></p>
<p>You can open it in either Visual Studio 2010, or Visual C++ Express 2010.
If you get errors about not being able to find <code>.props</code> files, run
update-webkit, then close and relaunch Cygwin and Visual Studio or Visual C++
Express.</p>
</li>
<li><p>Set WinLauncher as the solution's StartUp project</p>
<p>Select the WinLauncher project in the Solution Explorer, then choose Project >
Set as StartUp Project. This will cause the project to turn bold in the
Solution Explorer.</p>
<img src="set-as-startup-project-vs2010.png">
</li>
<li><p>Launch the debugger</p>
<p>Choose Debug > Start Debugging.</p>
<img src="launch-debugger-vs2010.png">
<li><p>Alternatively, you can debug layout tests with DumpRenderTree</p>
<p>Set DumpRenderTreeLauncher as your startup project, set the layout test as a command argument, and launch the debugger.</p>
<p>In DumpRenderTreeLauncher's properties, go to Configuration Properties->Debugging and set the Command Arguments field to the full path of the layout test you want to debug, see below: </p>
<img src="set-debugging-properties-vs2010.png">
</li>
</ol>
</div>

<?php
    include("../footer.inc");
?>
